.. :validated: 3.2.0

.. _usin_samba_config:

Настройка Samba для корректной работы RPC-сервера
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Для обеспечения стабильной работы доверительных отношений с **MS AD** рекомендуется выполнить следующие действия:

1. Отключить **NetBIOS** на контроллере домена **MS AD**;
2. Изменить конфигурацию **Samba**;
3. Запустить **RPC**-сервер ``samba-dcerpcd`` с нужными опциями.

В начале следует настроить контроллер домена **MS AD** следующим способом:

Навести курсор на иконку **Сеть "Доступ к Интернету"** в нижнем правом углу экрана, нажать по нему правой кнопкой мыши и выбрать **Открыть "Параметры сети и Интернет"**.

Выбрать пункт **Ethernet**, раздел **Центр управления сетями и общим доступом**.

Нажать в графе **Подключения** на **Ethernet** → **Свойства** → раздел **IP версии 4 (TCP/IPv4)** → **Дополнительно** → вкладка **WINS**.

Нажать **Отключить NetBIOS через TCP/IP** и подтвердить все изменения, последовательно выбрав **Ок** в открытых окнах, в окне **Состояние: Ethernet** нажать клавишу **Закрыть**.

.. important::

    Для успешной установки доверительных отношений с **Windows Server 2012 R2** требуется отсутствие обновления ``KB5020447`` (входит в состав обновлений ``KB5022352`` и ``KB5021294``).

Далее необходимо изменить конфигурацию **Samba**. 

Для того, чтобы выключить **NetBIOS** и запустить **RPC** по запросу в **Samba**, выполнить команды:

.. code-block:: console

    sudo net conf setparm global "disable netbios" "yes"
    sudo net conf setparm global "rpc start on demand helpers" "false"
    sudo net conf setparm global 'rpc server dynamic port range' '49152-65535'
    sudo net conf delparm global 'rpc server port:netlogon'
    sudo net cache flush
    sudo systemctl restart smbd nmbd winbind

Для запуска **RPC-сервера** на КД **ALD Pro** нужно создать службу. Для этого необходимо создать файл ``/lib/systemd/system/samba-dcerpcd.service`` со следующим содержимым:

.. code-block:: console

    [Unit]
    Description=Samba DCERPC Daemon
    Documentation=man:samba-dcerpcd(8)
    After=network.target smbd.service
    [Service]
    Type=notify
    PIDFile=/run/samba/samba-dcerpcd.pid
    ExecStart=/usr/libexec/samba/samba-dcerpcd --foreground --libexec-rpcds
    Restart=on-failure
    [Install]
    WantedBy=multi-user.target

После этого необходимо запустить **RPC-сервер** командами:

.. code-block:: console

    sudo systemctl daemon-reload
    sudo systemctl enable --now samba-dcerpcd.service
